草庐IT

c++ - InvalidateRect 和 RedrawWindow 的区别

全部标签

c - 比较常量时在哪里可以使用&和==?有什么不同?

我想知道之间有什么区别:file.dwFileAttributes&FILE_ATTRIBUTE_DIRECTORY和:file.dwFileAttributes==FILE_ATTRIBUTE_DIRECTORY当我使用第一个时,我得到了更多文件。FILE_ATTRIBUTE_DIRECTORY是文件属性常量,file.dwFileAttributes是WindowsAPI中的WIN32_FIND_DATA结构成员。 最佳答案 规则很简单:当变量只能保存一个值时,您可以使用相等运算符==进行测试。当变量可以包含零个、一个或多个标志

c++ - C 和 C++ 中 WINAPI 的区别

我正在从驱动程序读取数据。该驱动程序附带了有关如何基于该驱动程序开发应用程序的示例。这些例子是几年前写的。他们使用WINAPI和C。现在我将使用他们的一些头文件。它们定义了数据结构和各种其他内容。我尝试在C++中创建WINAPI并尝试链接到这些文件。但正如解释的here,inthelastanswer,我非常相信我的代码也有同样的问题。现在,我不能按照那里的建议去做。我的程序很长,我不能弄乱头文件。它们很复杂。我的选择是完全用C语言创建我的项目(我希望它能解决问题)。首先,我将文件.cppt0重命名为.c。(我什至不知道这两种编程语言之间的区别。到目前为止,它们的区别没有任何区别。)主

c++ - 通过 Windows API 函数替换对 AfxGetInstanceHandle() 的调用

SHELLEXECUTEINFOinfo;//Initializingstructinfo.cbSize=sizeof(info);info.fMask=SEE_MASK_NOCLOSEPROCESS|SEE_MASK_FLAG_NO_UI;info.hwnd=NULL;info.lpVerb=_T("open");info.lpParameters=sParameters_p;info.lpDirectory=_T("");info.nShow=SW_SHOW;info.hInstApp=NULL;info.lpFile=sFileName_p;//Problemhere:info.

c - 缓冲区溢出时程序没有崩溃

我想从键盘读取一个字符串并存储在buf中。我设置了一个charbuf[6]数组,这个数组最多可以存储5个字符和\0。然后我输入123456789它包含11个字符和一个\0,程序仍然可以运行,但是如果我输入更长的字符串123456789123456789它会在运行时崩溃。这两个输入也超出了buf的范围,但是一个可以运行,另一个崩溃?这是我的代码:#include#include#includevoidread_str();intmain(){read_str();system("pause");return0;}voidread_str(){charbuf[6]={};scanf("%[

c - 多个窗口,单个托盘图标

我的目标是为我的应用程序的所有窗口使用一个图标。经过一番阅读,我的理解是创建托盘图标是通过Shell_NotifyIcon()实现的。此函数获取一个NOTIFYICONDATA结构,其中包含一个hWnd字段。这个HWND是系统用来通知相应窗口托盘图标事件的。这些事件由使用SetWindowLongPtr()在窗口上设置的WindowProc回调处理。因此我的问题是:单个图标如何通知我的应用程序的所有窗口单击鼠标左键?我可以使用不同的NOTIFYICONDATA结构多次Shell_NotifyIcon()吗?每次都有不同的hWnd,但具有相同的图标?如果注册创建托盘图标的原始窗口被破坏怎

windows - FILE_WRITE_DATA 和 FILE_APPEND_DATA 之间的区别

我想使用CreateFile()打开一个文件进行写入。如果文件存在,我会将文件指针设置到末尾,然后使用WriteFile()写入数据。如果它不存在,我会写在文件的开头。我应该在CreateFile()的dwDesiredAccess参数中使用FILE_APPEND_DATA还是应该使用FILE_WRITE_DATA或者FILE_WRITE_DATA|FILE_APPEND_DATA?最后的写法不也是写法,为什么会有FILE_APPEND_DATA? 最佳答案 whyisthereFILE_APPEND_DATA?FILE_APPEN

c++ - 如何测试中断延迟?

WindowsEmbeddedCompact7。有没有办法从用户空间测试中断延迟时间?是否有任何工具作为平台构建器的一部分提供?我还看到了一个名为Intrtime.exe的程序-但没有关于如何使用它的示例。如何测试中断延迟时间?Intrtime.exe的引用,但我如何实现它?http://www.ece.ufrgs.br/~cpereira/temporeal_pos/www/WindowsCE2RT.htm编辑还发现:ILTiming.exeReal-TimeMeasurementTool(Compact2013)http://msdn.microsoft.com/en-us/lib

c - 将 printf 重定向到 IAR Embedded Workbench 上的控制台 I/O

我在Windows机器上的软件IAREmbeddedWorkbenchIDE中用C编写了我的一个项目。该项目编译并运行良好。我的代码中有几个printf函数。但问题是该项目适用于微ControllerAT91SAM7X256。我已成功构建我的应用程序以在微Controller的sram上运行,并且应用程序已成功加载。但是printf函数被定向到Controller的USART端口(我只能假设),所以我想重定向printf以在我的上显示文本终端输入/输出。有谁知道我该怎么做? 最佳答案 我使用IAR工具链的ARM、AVR32和MSP4

windows - ConnectEx 和 _ConnectEx 有什么区别?

我发现了一些使用_ConnectEx而不是普通ConnectEx的代码。有区别吗?事实上,我注意到Microsoft有一些其他的函数调用前面有下划线。这样做的动机是什么? 最佳答案 ConnectEx不是正常的导出函数。事实上,它根本不是按名称导出的。如果您阅读docs为此你会发现:ThefunctionpointerfortheConnectExfunctionmustbeobtainedatruntimebymakingacalltotheWSAIoctlfunctionwiththeSIO_GET_EXTENSION_FUNC

c++ - 如何获得与 select() 等效的 poll() 的 POLLHUP?

我目前正在将一些代码从Linux移植到Windows(使用MinGW)。来selfunderstand,MinGW不支持原来使用的poll(),所以我重写了select()的所有内容。现在我偶然发现了if(pfd[i].revents&(POLLERR|POLLHUP))...我怎样才能用select()或winsockapi或MinGW提供的任何东西来获得这个条件的等价物?POLLERR部分很简单;if(FD_ISSET(i,&error_fd_set))但我对POLLHUP部分不知所措。 最佳答案 你不能。您必须使用“正常”方式